home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / lib / python2.4 / encodings / utf_16.pyo (.txt) < prev    next >
Python Compiled Bytecode  |  2005-10-18  |  2KB  |  66 lines

  1. # Source Generated with Decompyle++
  2. # File: in.pyo (Python 2.4)
  3.  
  4. """ Python 'utf-16' Codec
  5.  
  6.  
  7. Written by Marc-Andre Lemburg (mal@lemburg.com).
  8.  
  9. (c) Copyright CNRI, All Rights Reserved. NO WARRANTY.
  10.  
  11. """
  12. import codecs
  13. import sys
  14. encode = codecs.utf_16_encode
  15.  
  16. def decode(input, errors = 'strict'):
  17.     return codecs.utf_16_decode(input, errors, True)
  18.  
  19.  
  20. class StreamWriter(codecs.StreamWriter):
  21.     
  22.     def __init__(self, stream, errors = 'strict'):
  23.         self.bom_written = False
  24.         codecs.StreamWriter.__init__(self, stream, errors)
  25.  
  26.     
  27.     def encode(self, input, errors = 'strict'):
  28.         self.bom_written = True
  29.         result = codecs.utf_16_encode(input, errors)
  30.         if sys.byteorder == 'little':
  31.             self.encode = codecs.utf_16_le_encode
  32.         else:
  33.             self.encode = codecs.utf_16_be_encode
  34.         return result
  35.  
  36.  
  37.  
  38. class StreamReader(codecs.StreamReader):
  39.     
  40.     def reset(self):
  41.         codecs.StreamReader.reset(self)
  42.         
  43.         try:
  44.             del self.decode
  45.         except AttributeError:
  46.             pass
  47.  
  48.  
  49.     
  50.     def decode(self, input, errors = 'strict'):
  51.         (object, consumed, byteorder) = codecs.utf_16_ex_decode(input, errors, 0, False)
  52.         if byteorder == -1:
  53.             self.decode = codecs.utf_16_le_decode
  54.         elif byteorder == 1:
  55.             self.decode = codecs.utf_16_be_decode
  56.         elif consumed >= 2:
  57.             raise UnicodeError, 'UTF-16 stream does not start with BOM'
  58.         
  59.         return (object, consumed)
  60.  
  61.  
  62.  
  63. def getregentry():
  64.     return (encode, decode, StreamReader, StreamWriter)
  65.  
  66.